package com.credithc.signature.common.utils;

/**
 * 描 述: 过滤特殊字符工具类<br/>
 * 作 者: Jingbo Hu<br/>
 * 创 建：2019年09⽉04⽇<br/>
 * 版 本：v1.0.0<br>
 * <p>
 * 历 史: (版本) 作者 时间 注释 <br/>
 */
public class MessageFilterUtil {

    private static final String EMPTYSTR = "";
    private static final String TABLE = "</table>";
    private static final Integer LIMITLEN = 1000;


    /**
     * 过滤特殊字符
     *
     * @param errorMsg
     * @return
     */
    public static String filter(String errorMsg) {
        if (errorMsg != null && errorMsg.contains(TABLE)) {
            errorMsg = errorMsg.replaceAll(TABLE, EMPTYSTR);
        }
        return errorMsg;
    }

    /**
     * 限制错误信息长度
     *
     * @param errorMsg
     * @return
     */
    public static String limitLength(String errorMsg) {
        if (errorMsg != null && errorMsg.length() >= LIMITLEN) {
            errorMsg = errorMsg.substring(0, LIMITLEN);
        }
        return errorMsg;
    }

    /**
     * 测试
     *
     * @param args
     */
    public static void main(String[] args) {
        try {
            String msg = null;
//            String msg = "The element type \"table\" must be terminated by the matching end-tag \"</table>\"";
            msg = filter(msg);
            System.out.println(msg);

            String s = limitLength(msg);
            System.out.println(s);
        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}
